Linux创始人:C很简单,但易犯错,而Rust不是
9 月 16 日,在维也纳举行的 Linux 基金会开源峰会上,Linus 谈到了关于 Rust 和 C 语言的争论。
“C 语言,归根结底,是一个非常简单的语言。这是我享受 C 语言的原因,也是很多 C 语言程序员喜欢它的原因。也正因为它简单,所以也非常容易犯错。而 Rust 不是。” 在与 Verizon 开源部门负责人 Dirk Hohndel 的现场对话中,Linus 对 Rust 的安全性予以了肯定。
将 Rust 引入 Linux 内核已经成为一个热门话题。
2022 年,开发者们就这门语言进行了争论,一些人将 Rust 的内存安全特性称为对多年来内核工作的 “侮辱”。
9 月初,Rust for Linux 项目的一位维护者辞职,称对 “非技术性的胡说八道” 感到沮丧。这在技术圈引起了讨论。
Linus 表示,不理解为什么 Rust 会成为如此有争议的话题,并笑称这让他想起了过去人们关于 vi 和 Emacs 编辑器的争论。(补充一下:vi 和 Emacs 的争论可以追溯到 20 世纪 70 年代,并且至今仍在继续。)
“Rust 和 C 的讨论几乎带有宗教色彩。”Linus 直言,争论有时会变得激烈,甚至可以说是恶毒。但他认为在这些关于 Rust 的争论是积极的,因为它激发了讨论,表明有人在乎。
现在人们都在谈论 “Rust 集成失败了”,Linus 认为,要得出这一结论还为时尚早,毕竟才做了几年。何况他并不认为该项目会失败。
一个月前,在香港举行的 Linux 基金会开源峰会上,Linus 就曾公开表示,Rust 在 Linux 内核项目中的采用速度太慢了。
一方面,因为很多资深内核开发者都已经习惯了 C 语言,对 Rust 并不熟悉。况且 Rust 以学习曲线陡峭著称,他们没有什么兴趣学些一门新的语言。
另一方面,Rust 的基础设施本身还不够稳定。确实如此,与 C 语言相比,Rust 的生态系统还相对年轻,而 C 语言的生态系统已经发展了几十年,拥有大量稳定、经过时间检验的库和工具。
虽然这么说,但也并不影响 Linux、Windows、Android 三大操作系统积极探索和引入 Rust 语言,以利用其在内存安全和并发编程方面的优势。
为什么都三大操作系统都看好 Rust,它是怎么实现内存安全的?以至于谷歌甚至还放话要脱离 C/C++。
在操作系统之外,Rust 也将取代 C/C++ 吗?有人就认为,Rust 适合写内核级别的代码,但并不是适合业务开发,因为它不够高效,不够灵活。
【开源漫谈】第十四期,我们邀请了三名资深 Rust 专家,以直播的形式,深入探讨 Rust 在操作系统领域的崛起及其对 C/C++ 的潜在替代趋势,并客观分析 Rust 在各个开发领域的适用性,以期为广大开发者提供更为全面的技术视角和思考。
↓直播预约↓
✨直播福利
互动抽奖:在直播评论区提问,被直播嘉宾回复的用户可获 OSC T 恤 1 件,名额不限。 福袋抽奖:直播中将有多轮抽奖,参与就有机会获得 OSC T 恤、笔记本、马克杯 、前沿技术书籍等。
相关来源
延伸阅读
“革命性”「Safe C++」扩展提案:质疑Rust、理解Rust、成为Rust?
C++之父反驳白宫,称拜登政府忽视了现代C++编程语言的优势
C++用于Linux内核开发,曾被Linus强烈反对,现在时机终成熟?
END
往期回顾
谷歌SRE工程师打拼9年:年薪超60万美元、钱赚够了、对技术不再那么热爱高通拟收购英特尔——Arm与x86之争到此为止?“革命性”「Safe C++」扩展提案:质疑Rust、理解Rust、成为Rust?我有一个大胆的想法:呼吁Linus延迟退休!Zen浏览器——号称是“开源版Arc”、轻如鸿毛、快如闪电